package com.lushu.chapitre1.dialogue.api
{
    public interface INode
	{
		function addChild(node : INode) : void;
		function addChildAt(node : INode, idx : int) : void;
		function replaceChild(prevNode : INode, newNode : INode) : void
		function getPotentialChildNodes(node : INode) : Array
		function setInformation(data : XML) : void;
		function removeChild(node : INode) : void
		function removeChildAt(idx : int) : void
		function switchToSwitchNode() : void
		
		function set parent(value : INode) : void
		function get parent() : INode;
		function set name(value : String) : void
		function get name() : String;
		function get displayName() : String;
		function set data(value : String) : void;
		function get data() : String;
		function get type() : String;
		function get children() : Vector.<INode>;
		
		function toXML(level : int = 0) : String;
	}
}